package com.ruoyi.contract.tools;

import java.text.SimpleDateFormat;
import java.util.Date;

public class ContractCode {

    // 获取当前时间的时间戳，格式为 yyyyMMddHHmmss
    public static String getCurrentTimestamp() {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
        return sdf.format(new Date());
    }

    // 新方法：生成唯一编号
    public static String generateUniqueCode(String companyName, String contractType) {
        // 1. 获取公司首字母，保留数字
        String companyInitials = ChineseUtil.getFirstLetter(companyName);

        // 2. 去掉合同类型中的“合同”字样，并获取首字母，保留数字
        String processedContractType = contractType.replace("合同", ""); // 去掉“合同”
        String contractInitials = ChineseUtil.getFirstLetter(processedContractType);

        // 3. 获取当前时间的时间戳
        String timestamp = getCurrentTimestamp();

        // 4. 拼接公司首字母 + 合同类型首字母 + 时间戳
        return companyInitials + contractInitials + timestamp;
    }

    public static void main(String[] args) {
        // 测试
        String companyName = "善德123";
        String contractType = "项目123合同";
        String uniqueCode = generateUniqueCode(companyName, contractType);

        System.out.println("Generated Code: " + uniqueCode); // 输出类似 SDXM20241024094539
    }
}

